package com.job.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.job.common.ResponseResult;
import com.job.common.enums.ResultCodeEnum;
import com.job.common.exception.ParameterIsNullException;
import com.job.controller.req.RecruitAddVO;
import com.job.controller.req.RecruitStudentReqVO;
import com.job.controller.resp.RecruitVO;
import com.job.pojo.vo.StudentVO;

import java.util.List;
import java.util.Map;

public interface RecruitService {
    ResponseResult<ResultCodeEnum> recruitAdd(RecruitAddVO recruitAddVO) throws ParameterIsNullException;

    ResponseResult<ResultCodeEnum> recruitDelete(Integer positionId);

    ResponseResult<ResultCodeEnum> recruitUpdate(RecruitAddVO recruitAddVO);

    ResponseResult<IPage<Map<String,Object>>> recruitQuery(String hrId) throws ParameterIsNullException;

    ResponseResult<Page<StudentVO>> studentList(RecruitStudentReqVO recruitStudentVO);

    ResponseResult<List<RecruitVO>> mateRecruitQuery(String id);
}
